using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Threading.Tasks;

namespace WebUpdaterAdminCore.Models
{
   
    public class SocketSessionModel
    {
        /// <summary>
        /// 客户端ID
        /// </summary>
        [Key]
        [Display(Name = "客户端ID")]
        public string ClientId { get; set; }


        /// <summary>
        /// Socket会话ID
        /// </summary>
        [Display(Name = "会话ID")]
        public string SessionId { get; set; }

        
        /// <summary>
        /// 客户端名称(自定义)
        /// </summary>
        [Display(Name = "客户端名称")]
        public string ClientName { get; set; }

        /// <summary>
        /// 分组ID
        /// </summary>
        public int GroupId { get; set; }

        /// <summary>
        /// 分组名称
        /// </summary>
        public string GroupName { get; set; }


        /// <summary>
        /// 是否在线
        /// </summary>
        [Display(Name = "是否在线")]
        public bool Connected { get; set; }

        /// <summary>
        /// 客户端启动时间
        /// </summary>
        [Display(Name = "客户端启动时间")]
        public DateTime StartTime { get; set; }

        /// <summary>
        /// 最近连接时间
        /// </summary>
        [Display(Name = "最近连接时间")]
        public DateTime LastActiveTime { get; set; }

        /// <summary>
        /// 远程地址
        /// </summary>
        [Display(Name = "远程地址")]
        public string RemoteIP { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Display(Name = "备注")]
        public string Remarks { get; set; }
    }
}
